// app.js
App({
  onLaunch: function () {
    // 初始化数据
    this.initData();
    this.globalData = {
      // env 参数说明：
      //   env 参数决定接下来小程序发起的云开发调用（wx.cloud.xxx）会默认请求到哪个云环境的资源
      //   此处请填入环境 ID, 环境 ID 可打开云控制台查看
      //   如不填则使用默认环境（第一个创建的环境）
      env: "cloud1-5gm7442scbc244a3"
    };
    if (!wx.cloud) {
      console.error("请使用 2.2.3 或以上的基础库以使用云能力");
    } else {
      wx.cloud.init({
        env: this.globalData.env,
        traceUser: true,
      });
    }
  },
  initData() {
    // 1️⃣ 获取本地存储中的最后访问日期（格式：YYYY-MM-DD）
    const lastVisitDate = wx.getStorageSync('lastVisitDate');

    // 2️⃣ 获取当前日期并标准化格式
    const today = new Date();
    const formattedToday = `${today.getFullYear()}-${(today.getMonth() + 1).toString().padStart(2, '0')}-${today.getDate().toString().padStart(2, '0')}`;
    
    // 3️⃣ 判断是否为当天第一次打开
    if (!lastVisitDate || lastVisitDate !== formattedToday) {
      console.log('&#9989; 这是用户今天的第一次打开');
      // TODO: 在这里执行首次打开的逻辑（如展示新手引导、弹窗等）
      // 初始化数据
      wx.setStorageSync('firstOpen', true);
      wx.setStorageSync('todayWordCount', 0);
      wx.setStorageSync('openId', '')
      // 判断lastVisitDate是否早于昨天
      const yesterday = new Date(today);
      yesterday.setDate(today.getDate() - 1);
      const formattedYesterday = `${yesterday.getFullYear()}-${(yesterday.getMonth() + 1).toString().padStart(2, '0')}-${yesterday.getDate().toString().padStart(2, '0')}`;
      if (!lastVisitDate || lastVisitDate < formattedYesterday) {
        // 如果早于昨天或者没有上一次访问时间，那么连续学习天数为1
        wx.setStorageSync('continuousDays', 0);
      } else {
        // 如果晚于昨天，那么连续学习天数+1
        let continuousDays = wx.getStorageSync('continuousDays') + 1;
        if (continuousDays < 2) {
          continuousDays = 2;
        }
        wx.setStorageSync('continuousDays', continuousDays);
      }
    } else {
      console.log('&#10060; 这不是今天的第一次打开');
    }

    // 4️⃣ 无论是否首次，都更新最后一次访问时间为今天
    wx.setStorageSync('lastVisitDate', formattedToday);
  }
});
